package org.huawei260.TiKu.ODsuanfa;

import java.util.Scanner;

/**
 * @Author: qingle
 * @Date: 2024/10/28-16:11
 * @Description: 2531 【模拟】2024D来自异国的客人
 *
 * 题目描述
 * 有位客人来自异国，在该国使用 m 进制计数。
 *
 * 该客人有个幸运数字n（n < m），每次购物时，其总是喜欢计算本次支付的花费（折算为异国的价格后）中存在多少幸运数字。
 *
 * 问：当其购买一个在我国价值 k 的产品时，其中包含多少幸运数字?
 *
 * 输入描述
 * 第一行输入为 k，n，m。
 *
 * 其中：
 *
 * k 表示该客人购买的物品价值（以十进制计算的价格）
 * n 表示该客人的幸运数字
 * m 表示该客人所在国度采用的进制
 * 输出描述
 * 输出幸运数字的个数，行末无空格
 *
 * 备注
 * 当输入非法内容时，输出0
 *
 * 用例
 * 输入	10 2 4
 * 输出	2
 * 说明	10用4进制表示时为22，同时，异国客人的幸运数字是2，故而此处输出为2，表示有2个幸运数字。
 * @version: 1.0
 */
public class D_2024D_2531__模拟来自异国的客人 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int k = sc.nextInt();
		int n = sc.nextInt();
		int m = sc.nextInt();

		System.out.println(compute(k, n, m));
	}

	private static int compute(int k, int n, int m) {
		// 将k转换为m进制
		int res = 0;
		while (k > 0) {
			int mod = k % m;// 余数
			if (mod == n) {
				res++;
			}
			k = k / m;
		}
		return res;

//		return Integer.toString(k, m).chars().mapToObj(c -> c - '0').filter(c -> c == n).mapToInt(c -> c).sum();
	}
}
